home *** CD-ROM | disk | FTP | other *** search
- SERVER.DOC 24 sept 1987 by Gerard van der Grinten, PA0GRI.
-
- This document describes the features and functioning of the SERVER gateway
- for interfacing WA7MBL's PBBS mailbox system and KA9Q's AMPRnet implementation
- of the TCP/IP family of protocols. It has code stolen from N3EUA's implemen-
- tation of an SMTP server called BM and depends on messages to be compatible
- with the way BM works.
-
- SERVER executes in two parts.
-
- The first part transfers messages written by WA7MBL's PBBS into the file
- SERVER.TXT into the mqueue directory for the SMTPCLIent if server can find
- the destination host in the file \HOSTS.NET. If not found that message is
- written back onto the file SERVER.INP to be processed by the test to message
- part of WA7MBL PBBS. An descriptive text is placed around it and send back
- to the writer of that message. The To: is taken from the Subject line asked
- by the PBBS and the Subject line in the generated message is the first line
- of that message. This means a shift of lines occurred but this cannot harm
- anybody. The subject line at the PBBS message MUST be as name@host in lower
- case letters otherwise the hostname cannot be matched with the HOSTS.NET file.
-
- The second part reads the file /spool/mqueue/server.txt for messages addressed
- to this server. It scans the file for RFC822 compatible formatted messages
- and extracts via an state machine the header of an message. Server then scans
- the To: field for an destination. Expected is BM compatible messages, this
- means: simple types. We are not equiped with an advanced router yet so server
- expects: server@mailbox%destination_callsign.
- Server because that is the file SMTPSERV will make for the messages.
- Mailbox as the destination where BM can find that host address.
- %destination_callsign is the way server can easily find whereto to send it
- "on the other side". If no "%call" is found the message will be send as
- SB ALL , so it ends up as a bulletin on that board and the person who thinks
- the message is for him can read it too on the PBBS.
-
- Further notes:
- 1)
- Server uses the config file \BM.RC for various config issues.
- 2)
- Server deletes the file /spool/mail/server.txt when done reading it.
- 3)
- I use an litle .bat file from WA7MBL d command in FWD.BBS. It reads:
- SERVER pa0gri
- IF ERRORLEVEL 1 pause "error running server"
- IF NOT EXISTS SERVER.TXT goto done
- COPY SERVER.OLD+SERVER.TXT
- DEL SERVER.TXT
- done:
- 4)
- Server has one parameter being your stations call sign. If not added to the
- command line PA0GRI will be used , but i guess that is not what you want.
- 5)
- As this is my first try-out and is designed in 3 days (evenings) I guess
- lots of suggestions will be comming in.
- I welcome them and will try to get them in as they fit in the code or design.
- 6)
- I know i do the wrong thing in assigning server@host%call as the way to for-
- ward destination description but that is the only way i could think of in
- this short time. ( i wanted it to be finished before LA so you get an extra
- cookie of the Phill/Bdale smorgasbrot).
- 7)
- If we get smarter routers they will be added into this program as well to
- get rite of point 6.
- 8)
- There are 2 conditionals in the 'c' code:
- 1 DEBUG , to be used whatfore, i forgot...
- 2 BSLASH , to help the conversion people. if NOT defined all / in filenames
- come out as /. if defined all / for filenames are converted into \.
- This aids the people for MSC and possible 680x0 systems "compatible" with
- MS/PC-DOS. For msc i also added my dirty way of index(), rindex().
-
- Regards gerard , PA0GRI. gvdg@CDCCentr.BITNET